11. 盛最多水的容器
11. 盛最多水的容器
Similar Question
leading to the advanced question
Solution Tips
方案一: 双指针
感觉这题和对撞指针其实没啥关系, 目前已经归类的对撞指针题目主要作用是来缩小搜索范围的, 但是这里的指针调整原因并不一致, 更多是基于数学上的考量
var maxArea = function(height) {
// 连续子数组, 成绩最大
// 肯定不能排序啊, 那要怎么对撞指针? 没搞懂
// 并没有缩减搜索范围, 我总感觉这个就是普通的双指针, 因为双指针的 index 差也参与到计算中了
let max = 0;
let left = 0;
let right = height.length - 1;
while (left < right) {
const area = Math.min(height[left] , height[right]) * (right - left);
if (area > max) {
max = area;
}
// 调整更小的那个? 这样更有希望变大
if (left >= right) {
right--;
} else {
left++;
}
}
return max;
};
console.log(maxArea([2,3,4,5,18,17,6]));